#include <cellcsp.h>
#include <string>
#include <stdio.h>
#include <csp_debug.h>




int main(){

	int block_all_dma=0, clear_spe_mem=0;

#ifdef BLOCK_ALL_DMA
	block_all_dma=1;
#endif

#ifdef CLEAR_SPE_MEM
	clear_spe_mem=1;
#endif

	ASSERT( block_all_dma );
	ASSERT( clear_spe_mem );
	
	CSPConfig conf;

	char *mnemonic = "malloc_task";

	conf.add_csp_program("tasks/malloc_task", mnemonic);

	//CellCSP_start(conf, &kernel);
	CellCSP_start(conf);

	Parallel par(
	new CSPProcess(mnemonic), /*
	new CSPProcess(mnemonic), 
	new CSPProcess(mnemonic), 
	new CSPProcess(mnemonic), 
	new CSPProcess(mnemonic),*/ NULL);

	par.Run();

	/*
	CSPProcess mytask2("mytask1");
	mytask2.Run();
	*/

	CellCSP_end();
	
	return 0;
}
